﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VideoClipNameHelper;

namespace VideoClipNameHelper
{
    public class OneLineTextLog
    {
        public enum LogFile {Note, Like }
        //====================================================================================================================
        private static string getLogFileName(LogFile lf)
        {
            switch(lf)
            {
                case LogFile.Note:
                    return "notes.txt";
                case LogFile.Like:
                    return "likes.txt";
            }
            return "";
        }
        //====================================================================================================================
        public static async System.Threading.Tasks.Task<bool> SaveMessage(ConfigPaths cp, LogFile lf, string message)
        {
            if (!System.IO.Directory.Exists(cp.ReportsDir))
            {
                System.IO.Directory.CreateDirectory(cp.ReportsDir);
            }
            //
            string fileName = getLogFileName(lf);
            try
            {
                using (System.IO.StreamWriter sw = System.IO.File.AppendText(System.IO.Path.Combine(cp.ReportsDir, fileName)))
                {
                    await sw.WriteLineAsync(string.Format($"{DateTime.Now} [{message}]{Environment.NewLine}"));
                    await sw.FlushAsync();
                }
            }
            catch
            {
                return false;
            }
            //
            return true;
        }
        //====================================================================================================================

    }//class
}
